/**
 * 格式化时间
 * @param {Date | Number} date：传入需要格式化的时间
 * @param {String} fmt：返回时间格式，默认yyyy-MM-dd hh:mm:ss
 * @return {String|''} 返回格式化的时间
 */
export const formatDate = (date, fmt = "yyyy-MM-dd hh:mm:ss") => {
  date = date instanceof Date ? date : new Date(date)
  if (/(y+)/.test(fmt)) {
    fmt = fmt.replace(
      RegExp.$1,
      (date.getFullYear() + "").substr(4 - RegExp.$1.length)
    )
  }
  const o = {
    "M+": date.getMonth() + 1,
    "d+": date.getDate(),
    "h+": date.getHours(),
    "m+": date.getMinutes(),
    "s+": date.getSeconds(),
  }
  for (const k in o) {
    if (new RegExp(`(${k})`).test(fmt)) {
      const str = o[k] + ""
      fmt = fmt.replace(
        RegExp.$1,
        RegExp.$1.length === 1 ? str : str.padStart(2, "0")
      )
    }
  }
  return fmt
}
